Method And Apparatus For Autonomous Services Composition

ABSTRACT

A cloud services composition system allows customers to interactively create service constructs from network function virtualization resources. The network function virtualization primitives are modeled using a standard modeling language. An expert system suggests network function virtualization resources for use in the service construct, based on an expert system learning algorithm. The customer uses a graphical user interface to interconnect the resources and create the service construct. The process may involve collaboration with the network provider. The resulting construct is validated for use in a communications network.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.17/038,050, filed on Sep. 30, 2020, which is a continuation of U.S.application Ser. No. 16/736,982, filed on Jan. 8, 2020, issued on Nov.24, 2020 as U.S. Pat. No. 10,846,706, which is a continuation of U.S.application Ser. No. 16/014,423, filed on Jun. 21, 2018, issued on Mar.3, 2020 as U.S. Pat. No. 10,580,013, which is a continuation of U.S.application Ser. No. 15/043,521, filed on Feb. 13, 2016 and issued onJul. 31, 2018 as U.S. Pat. No. 10,037,536. All sections of theaforementioned application(s) and/or patent(s) are incorporated hereinby reference in their entirety.

TECHNICAL FIELD

Embodiments of the present disclosure relate to the creation anddeployment of services in a network containing network functionvirtualization infrastructure. Specifically, the disclosure relates tocomposition by the customer of network services from virtualizedresources.

BACKGROUND

Cloud networks are becoming increasingly intelligent and programmable.The networks utilize intelligent software systems and applicationsoperating on general-purpose commodity hardware. That transformationdecreases capital and operating expenses, while permitting configurationof the networks with less human intervention. At the same time,significant opportunities are created to scale and monetize existing andnew intelligent services.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure can be readily understood by considering thefollowing detailed description in conjunction with the accompanyingdrawings, in which:

FIG. 1 is a block diagram showing a system for composing a networkservice.

FIG. 2 is a block diagram showing two views of a composition exampleaccording to aspects of the present disclosure.

FIG. 3 is a screen view of a graphical user interface for composing aservice according to aspects of the present disclosure.

FIG. 4 is a flow chart showing a method according to aspects of thepresent disclosure.

To facilitate understanding, identical reference numerals have beenused, where possible, to designate identical elements that are common tothe figures.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

Web service composition is currently used to create a single Webapplication by utilizing a variety of different applications inside thesingle Web application. That is done by means of simple object accessprotocol (SOAP) APIs from each of the constituent applications. Thisultimately has to do with service granularity—which indicates how muchfunctionality a service exposes. A coarse-grained service will expose awhole process as a consumable unit, whereas a fine-grained service willexpose a specific unit of logic from a larger process. Servicearchitects determine what granularity of service works best for a givenenvironment.

The presently described system enables cloud providers to establish aservices ecosystem for facilitating mass marketing of existing and newnetwork services. The system lowers barriers to entry for enterprisecustomers and small business customers to create new services.

In general, the disclosed intelligent service collects information aboutresources (users, devices, networks, and applications) used to deliverthe service and information about the environment in which it operates.It then makes decisions based on that information and domain knowledgewhich includes adapting and personalizing the service for the userscomposing and consuming it. The intelligent service receives feedback onits performance and learns.

The services composition system achieves several important goals. It isa predictive personalized service in that it anticipates a user's needsand proactively takes intelligent actions and recommends valuable andtimely personalized information. The system is additionally an adaptivesystem that learns from past actions of all users and adjusts itsbehavior to provide superior service quality. Finally, the servicescomposition system is dynamic in that it is robust and is able tosurvive and self-repair or self-organize itself from possible serviceinterruptions.

In certain embodiments of the present disclosure, a method is providedfor composing a service in a communications network. A plurality ofresource models is defined, each resource model describing a behavior ofa virtualized network function resources in the communications network.A customer service creation request is received from a customer tocreate a new network service, the request including a functionaldescription of the new network service. Based on an expert systemlearning algorithm trained using prior customer service creationrequests, one or more of the virtualized network function resources aresuggested to the customer for use in composing the new network service.An arrangement of icons is received from the customer via a graphicaluser interface. The arrangement of icons represents a subset of thevirtualized network function resources and includes representations ofinterconnections among the virtualized network function resources. Basedon the arrangement of icons and on the behaviors of the subset of thevirtualized network function resources, the arrangement of icons isvalidated as representing a feasible service composition for deploymentin the communications network. The service composition is deployed inthe communications network for use by the customer.

In additional embodiments, a computer-readable storage device isprovided having stored thereon computer readable instructions forcomposing a service in a communications network. Execution of thecomputer readable instructions by a processor causes the processor toperform operations including those described above.

In another embodiment, a system is provided for composing a service in acommunications network. The system comprises a processor resource, aninterface connecting the processor resource, and a computer-readablestorage device having stored thereon computer readable instructions.

Execution of the computer readable instructions by the processorresource causes the processor resource to perform operations includingthose described above.

The presently disclosed autonomous services composition system 100(FIG. 1) is an example of an intelligent service. The system 100 createsa ‘services marketplace’ that provides a holistic customer experience tocreate novel services by leveraging advanced tools like recommenders 102and expert systems and predictors 106, real time customer carecollaboration, custom pricing 108 and big data analytics 104. Theservice composition system includes a mechanism for integratingapplications/services from predefined component modules or resources110, linking those modules and deploying them where and when they areneeded. It is that service linking capability that provides the basicmechanism for defining new applications, managing applicationlifecycles, and implementing elastic services in the compositionenvironment. By rapidly integrating components and sizing thosecomponents dynamically, applications can be built to handle varying userloads. By selectively deploying component modules based upon affinityrules, multiple time-critical functions can be directed to share commoninfrastructure to minimize latency, while high availability can bemaintained by directing redundant components to execute ongeographically separated servers.

The presently described services marketplace allows customers, partners,developers, and others to interface and interact with each other andwith a broad array of tools, including analytic engines, data,predictive and recommendation tools, collaboration. The interaction ishighly flexible and easily configurable, allowing users to discover,create, simulate, deploy, monitor, and otherwise bring to realizationservice constructs assembled from service primitives. Those services canrange from a straightforward service drawn without change directly andimmediately from a catalog to unique and complex service creationsresulting from the collaboration of customers, partners, developers, andothers, and possibly spanning years of joint efforts.

A model driven approach is used at the heart of the services marketplaceto facilitate the creation and management of dynamic servicecompositions. The approach entails separation of the fundamentalcomposition logic from composition specifications. Because networkservices are increasingly provided using network function virtualized(NFV) resources, there is a need to model those resources appropriatelyto facilitate higher layer applications to provide value-added services,such as the disclosed composition environment.

As shown in FIG. 1, the presently disclosed autonomous servicescomposition system utilizes models of resources 110, services 111 andproducts 113. Resources can be concatenated to build services. Servicescan be ordered together with business policies and pricing to form endproducts. Composition is facilitated by leveraging relationships betweenservices and products to create a final product that entails featuresfrom its constituent services/products. Industry standards are used tomodel the NFVs. For example, embodiments utilize the OASIS Topology andOrchestration Specification for Cloud Applications (TOSCA) modellingspecification.

A product 113 is composed from its constituent virtualized resources110. A model is provided for describing each resource. Note that anetwork function virtualization can be modeled into a default set offeatures, with an optional set of alternative add-on features.

A composition example 200, shown in FIG. 2, demonstrates the compositionof two products: a network-on-demand product and a managed Internetservice product. The managed Internet service product provides Internetconnectivity to enterprise customers. At the customer view 210, this isshown as a site office with a customer premises equipment (CPE) 211connected by a link node 212 to an Internet gateway 220. Drilling downone more level shows a services view 240 including the variouspossibilities that the customer or network provider operations personnelcan see. The link node 212 is further described in terms of an accesslink, namely the CPE 211 to a point of presence (POP) link 216 via alink node 215, and from the POP 216 to an Internet gateway 220 via amultiprotocol label switching (MPLS) link 217. The access links can comein many varieties, one of which is defined as network-on-demand usingvirtualized routers. Each of those entities must be modeled in a genericway to allow different levels of service granularity. For example, theCPE has certain characteristics like bandwidth, number of ports, gradeof service, etc.

The disclosed services composition system utilizes an ecosystempopulated with an array of NFV models that facilitate interlinking orcombining to provide a richer set of value-added services. Combiningproducts and services in unique ways that have not been thought ofprovides opportunities that can be monetized and meet customer needsmore holistically. An additional benefit of this is that the process canbe self-propelled where vendors and partners are incented to contributevarious NFV models using well known standards, such as the OASIS TOSCAmodelling language.

An exemplary graphical user interface 300 for accessing such anecosystem is shown in FIG. 3. In a widget box 340, the user is providedwith models of VNFs that may be selected for representation in a drawingarea 310. Upon selection of a particular widget, the user specifiescharacteristics that are then implemented in the model. For example, awidget 341 representing a site-to-site connection with two end pointsmay be selected. The user specifies characteristics for the connection,including a 100 Mbps bandwidth and endpoints A and B. A representation342 of the connection is then created in the drawing area.

The composed service represented in the drawing area 310 may besimulated and tested using the underlying models of the selected VNFsand the specified interconnections. The simulation and testing may beperformed either in real time during composition or in response to adiscrete request by the customer.

In another example use case of the described composition system, a setof basic services is requested by a customer: a) data connectivitybetween two endpoints (e.g. a switched Ethernet service), b) a data‘splitter’ service that takes data from an endpoint and sends it to twoor more endpoints, c) a video anomaly detection service that takes avideo stream and sends alarms to an endpoint, and d) a data archivingservice. In this example, a small-town bank with a video surveillancecamera in the lobby wants to send that video stream to a home officewhile away from the bank. In the presently disclosed compositionenvironment, the basic connectivity service is configured with theendpoint locations. The customer requires that alerts additionally besent when something unexpected happens. In the example, that feature canbe composed by taking the video output from the data splitter serviceand piping it into the anomaly detection service. The anomaly detectionservice is configured to send alerts out. There may also be a need tostore the video for six months, in addition receiving the alerts. Ineach of those cases, the composition environment creates the individualservice orders for the basic services and creates the overallapplication control that shows how the basic services are stitchedtogether.

The disclosed composition environment uses items from the resourcecatalog 110, service catalog 111 and product catalog 113, shown inFIG. 1. Each of those network function virtualization (NFV) elementsmust be modeled before composition can be realized. That modeling may bedone by the network provider, by a virtual network function developer orby a third-party supplier. In embodiments, an extended version of theTOSCA modeling language is used to model those products. The use of thatopen source modeling language facilitates rapid service composition in amanner that is verifiable at different stages of the software lifecycle.

The starting point of composition may be a catalog of third party NFVs.In embodiments, an ecosystem is created by the network provider forbootstrapping network provider vendors to populate the resource andservice catalogs using TOSCA.

The architectural approach adopted for the presently disclosedcomposition environment enables rapid iterative development, an elasticscaling path as utilization grows, and flexibility in terms of evolvingrequirements and addition of new functionality. The subsystems aredesigned around a microservice architecture, in which componentsinteroperate via a lightweight distributed message bus. In embodiments,Vert.x1M, an open source tool-kit for building reactive applications onthe Java® virtual machine platform, is used. The carefully abstractedmessaging publish/subscribe interface facilitates extensibility. Forexample, semantic assistants may be added from the intelligent toolbox.Finally, the cloud-based composition environment cluster can easilyscale horizontally to meet elastic demand; subsystem replicas can bedeployed in seconds on lightweight containers as utilization requires.

Composition is ultimately a complex data-driven process, using not onlyan extensive product catalog and asset inventory, but alsorepresentations of the domain expertise that goes into building complexcomposite services. Embodiments of the presently disclosed compositionenvironment use graph database technology to allow natural ways torepresent the semantic connections among catalog and inventory items,workflow state, and related domain knowledge. The database isdynamically extensible to accommodate learning throughout the lifecycleand is continuously available to intelligent agents overseeing andaugmenting the composition process.

The disclosed composition environment must execute the composed order ina NFV environment such as AT&T′s Domain 2.0 network environment. A‘shopping cart’ like experience is created, allowing the end customer todiscover, create, deploy, and watch the service. The compositionenvironment must interoperate with a service design and creation (SD&C)subsystem 150 to fulfil the order. The composition environment alsocommunicates with a range of entities in the NFV environment to monitorthe service and present real-time reports in a dashboard using analyticsand visualization tools. For example, the composition environment maycommunicate with various components of an enhanced, control,orchestration, management, policy (ECOMP1M) system 160, an AT&T system,including the data collection, analytics, and event (DCAE) engine 161and active & available inventory (A&AI) subsystem 162 for real-timeasset information.

A natural part of the composition process is to allow the customer todiscover services and products that are related. An expert system isneeded to suggest or recommend compatible products to guide successfulcompositions. Another key feature of the disclosed compositionenvironment is designing for collaboration; given that composition is acomplex activity often involving many participants, the compositionenvironment has been designed to be a collaborative workspace from thestart. Specifically, a customer may interact with the network providerpersonnel or third-party equipment provider personnel in real timeduring the composition process, using an interface provided for thatpurpose. That collaborative arrangement provides for network providerinput and other vendor input during the composition process.

An additional aspect of composition of NFV services is the complexityand richness of the workflow. The disclosed composition environmentseeks to provide seamless support of the entire composition lifecycle.To make the environment maximally accessible, the user interface isentirely browser-based, leveraging HTML5 technologies like WebGL andWebRTC to enable a powerful and effective user experience. Finally, aWeb RTC-based collaboration environment has been provided for customercare needs.

The border between applications and network functions is becomingblurred in many cases. There are simple VNFs like vRouters (Vyatta® fromBrocade Communications Systems Inc. and CRS® from Cisco Systems Inc.,for example). Beyond that, there are domain name system (DNS) services,lightweight directory access protocol (LDAP) services and a likeservices which are more application-oriented services. New records mustbe added when a new tenant is provisioned, which is an applicationaction.

More complex VNFs come with their own databases or rely on an opensource relational or non-relational (noSQL) database like Cassandra™ forexample. The complex VNFs or chains of VNFs like a CDN subsystem or IMSand EPC subsystems require deep orchestration capabilities, creationorders, network dependencies, relationships, and complex actions to beperformed.

Autonomous service composition can be facilitated at various layers ofthe OSI stack. In the examples set forth in the present disclosure, itis used to improve the overall end customer experience by addressingfrom very simple scenarios to complex VFN chaining.

An example method 400 for composing a service in a communication systemis depicted by the flow chart of FIG. 4. A plurality of resource modelsis initially defined at block 410. Each resource model describes abehavior of a virtualized network function resource in thecommunications network. The resource models may, for example, be createdby network provider vendors and partners, who may have an interest inthe service composing system. The models may be created using well knownstandards such as the TOSCA modelling language.

A customer service creation request to create a new network service isreceived from a customer at block 420. The request includes a functionaldescription of the new network service. In embodiments, the request mayspecify the relevant nodes, the types of connections, and the functionsto be performed.

The system then suggests to the customer, at block 430, one or more ofthe modeled virtualized network function resources for use in composingthe new network service. The suggestion is based on an analysis of thefunctional description the new network service by an expert systemlearning algorithm that has been trained using prior customer servicecreation requests.

The customer then defines an arrangement of icons representing a subsetof the virtualized network function resources, which is received fromthe customer via a graphical user interface at block 440. Thearrangement of icons includes representations of interconnections amongthe virtualized network function resources. The customer may use thegraphical user interface to graphically define the interconnections. Theservice composition system may assist the customer in arranging theicons using expert system learning algorithm.

Based on the arrangement of icons and on the behaviors of the subset ofthe virtualized network function resources, the arrangement of icons isvalidated at block 450 as representing a feasible service compositionfor deployment in the communications network. The service composition isthen deployed at block 460 in the communications network for use by thecustomer.

The hardware and the various network elements discussed above compriseone or more processors, together with input/output capability andcomputer readable storage devices having computer readable instructionsstored thereon that, when executed by the processors, cause theprocessors to perform various operations. The processors may bededicated processors, or may be mainframe computers, desktop or laptopcomputers or any other device or group of devices capable of processingdata. The processors are configured using software according to thepresent disclosure.

Each of the hardware elements also includes memory that functions as adata memory that stores data used during execution of programs in theprocessors and is also used as a program work area. The memory may alsofunction as a program memory for storing a program executed in theprocessors. The program may reside on any tangible, non-volatilecomputer-readable storage device as computer readable instructionsstored thereon for execution by the processor to perform the operations.

Generally, the processors are configured with program modules thatinclude routines, objects, components, data structures and the like thatperform particular tasks or implement particular abstract data types.The term “program” as used herein may connote a single program module ormultiple program modules acting in concert. The disclosure may beimplemented on a variety of types of computers, including personalcomputers (PCs), hand-held devices, multi-processor systems,microprocessor- based programmable consumer electronics, network PCs,mini-computers, mainframe computers and the like, and may employ adistributed computing environment, where tasks are performed by remoteprocessing devices that are linked through a communications network. Ina distributed computing environment, modules may be located in bothlocal and remote memory storage devices.

An exemplary processing module for implementing the methodology abovemay be stored in a separate memory that is read into a main memory of aprocessor or a plurality of processors from a computer readable storagedevice such as a ROM or other type of hard magnetic drive, opticalstorage, tape or flash memory. In the case of a program stored in amemory media, execution of sequences of instructions in the modulecauses the processor to perform the process operations described herein.The embodiments of the present disclosure are not limited to anyspecific combination of hardware and software.

The term “computer-readable medium” as employed herein refers to atangible, non-transitory machine-encoded medium that provides orparticipates in providing instructions to one or more processors. Forexample, a computer-readable medium may be one or more optical ormagnetic memory disks, flash drives and cards, a read-only memory or arandom-access memory such as a DRAM, which typically constitutes themain memory. The terms “tangible media” and “non-transitory media” eachexclude transitory signals such as propagated signals, which are nottangible and are not non-transitory. Cached information is considered tobe stored on a computer-readable medium. Common expedients ofcomputer-readable media are well-known in the art and need not bedescribed in detail here.

The forgoing detailed description is to be understood as being in everyrespect illustrative and exemplary, but not restrictive, and the scopeof the disclosure herein is not to be determined from the description,but rather from the claims as interpreted according to the full breadthpermitted by the patent laws. Also, it is to be understood that thephraseology and terminology used herein is for the purpose ofdescription and should not be regarded as limiting The use of“including,” “comprising,” or “having” and variations thereof herein ismeant to encompass the items listed thereafter and equivalents thereofas well as additional items. Unless specified or limited otherwise, theterms “mounted,” “connected,” “supported,” and “coupled” and variationsthereof are used broadly and encompass direct and indirect mountings,connections, supports, and couplings. Further, “connected” and “coupled”are not restricted to physical or mechanical connections or couplings.It is to be understood that various modifications will be implemented bythose skilled in the art, without departing from the scope and spirit ofthe disclosure.

What is claimed is:
 1. A method, comprising: employing, by a processingsystem including a processor, a learning algorithm to perform ananalysis of a functional description of a requested network service, thelearning algorithm using a plurality of resource models that describebehaviors of virtualized network function resources of a communicationsnetwork; suggesting a compatible subset of the virtualized networkfunction resources, to obtain a suggested compatible subset of thevirtualized network function resources for use in composing therequested network service based on the analysis of the functionaldescription of the requested network service; generating, by theprocessing system and for presentation via user equipment, a compositionenvironment comprising icons representing the suggested subset of thevirtualized network function resources for use in composing therequested network service; and providing, by the processing system,assistance in defining an arrangement of the icons in the compositionenvironment, the assistance provided according to the learningalgorithm.
 2. The method of claim 1, wherein the plurality of resourcemodels includes models that describe network requirements of thevirtualized network function resources, exposed properties of thevirtualized network function resources and interconnection relationshipsof the virtualized network function resources with other virtualizednetwork function resources.
 3. The method of claim 1, furthercomprising: overseeing, by the processing system, validation of thearrangement of the icons of the composition environment as representinga feasible service composition adapted for deployment in thecommunications network.
 4. The method of claim 3, wherein the validationof the arrangement of the icons further comprises simulating, by theprocessing system, the requested network service using the resourcemodels.
 5. The method of claim 3, wherein the validation of thearrangement of the icons further comprises determining, by theprocessing system, whether the communications network contains Layer Iresources where required by the requested network service.
 6. The methodof claim 3, further comprising: obtaining, by the processing system,real-time asset information regarding the feasible service compositionfrom a virtual network function management framework, the virtualnetwork function management framework including a data collection,analytics and event engine and an active and available inventorysubsystem; and providing, by the processing system, real time reports ofa deployment of the feasible service composition in a dashboard of thecomposition environment using analytics and visualization tools.
 7. Themethod of claim 3, wherein a deployment of the feasible servicecomposition in the communications network comprises: receiving, by theprocessing system, an order from the user equipment for the requestednetwork service; and in response to the receiving the order,orchestrating, by the processing system, the requested network serviceincluding resource management, metering, and billing management.
 8. Themethod of claim 1, wherein the arrangement of the icons includesinterconnections among the icons.
 9. A device, comprising: a processingsystem including a processor; a memory that stores executableinstructions that, when executed by the processing system, facilitateperformance of operations, the operations comprising: employing alearning algorithm to perform an analysis of a functional description ofa requested network service, the learning algorithm using a plurality ofresource models that describe behaviors of virtualized network functionresources of a communications network; recommending a compatible subsetof the virtualized network function resources, to obtain a recommendedcompatible subset of the virtualized network function resources for usein composing the requested network service based on the analysis of thefunctional description of the requested network service; providing forpresentation via user equipment, a composition environment comprisingicons representing the recommended compatible subset of the virtualizednetwork function resources for use in composing the requested networkservice ; and providing assistance in defining an arrangement of theicons in the composition environment, the assistance provided accordingto the learning algorithm.
 10. The device of claim 9, wherein theplurality of resource models further includes models that describenetwork requirements of the virtualized network function resources,exposed properties of the virtualized network function resources andinterconnection relationships of the virtualized network functionresources with other virtualized network function resources.
 11. Thedevice of claim 9, wherein the resource models are further defined usinga Topology and Orchestration Specification for Cloud Applications opencloud standard modeling language.
 12. The device of claim 9, wherein theoperations further comprise: overseeing validation of the arrangement ofthe icons obtained from the composition environment as representing afeasible service composition for deployment in the communicationsnetwork.
 13. The device of claim 12, wherein the validation of thearrangement of the icons further comprises simulating the requestednetwork service using the resource models.
 14. The device of claim 12,wherein the operations further comprise: deploying the feasible servicecomposition in the communications network to obtain a deployed feasibleservice composition; obtaining real-time asset information regarding thefeasible service composition from a virtual network function managementframework, the virtual network function management framework including adata collection, analytics and event engine and an active and availableinventory subsystem; and providing real time reports of the deployedfeasible service composition in a dashboard of the compositionenvironment using analytics and visualization tools.
 15. The device ofclaim 9, wherein the recommended compatible subset of the virtualizednetwork function resources for use in composing the requested networkservice is further based on a domain of the user equipment.
 16. Anon-transitory, machine-readable storage medium comprising executableinstructions that, when executed by a processing system including aprocessor facilitate performance of operations, the operationscomprising: employing a learning algorithm to perform an analysis of afunctional description of a requested network service, the learningalgorithm using a plurality of resource models that describe behaviorsof virtualized network function resources of a communications network;identifying a compatible subset of the virtualized network functionresources, to obtain an identified compatible subset of the virtualizednetwork function resources for use in composing the requested networkservice based on the analysis of the functional description of therequested network service; providing for presentation via userequipment, a composition environment comprising icons representing theidentified compatible subset of the virtualized network functionresources; and providing assistance in defining an arrangement of theicons in the composition environment, the assistance provided accordingto the learning algorithm.
 17. The non-transitory, machine-readablestorage medium of claim 16, wherein the plurality of resource modelsincludes models that describe network requirements of the virtualizednetwork function resources, exposed properties of the virtualizednetwork function resources and interconnection relationships of thevirtualized network function resources with other virtualized networkfunction resources.
 18. The non-transitory, machine-readable storagemedium of claim 16, wherein the operations further comprise: overseeingvalidation of the arrangement of the icons obtained from the compositionenvironment as representing a feasible service composition fordeployment in the communications network.
 19. The non-transitory,machine-readable storage medium of claim 18, wherein the operationsfurther comprise: obtaining real-time asset information regarding thefeasible service composition from a virtual network function managementframework, the virtual network function management framework including adata collection, analytics and event engine and an active and availableinventory subsystem; and providing for presentation real time reports ofa deployment of the feasible service composition in a dashboard of thecomposition environment using analytics and visualization tools.
 20. Thenon-transitory, machine-readable storage medium of claim 16, wherein theresource models are defined using a topology and orchestrationspecification for cloud applications open cloud standard modelinglanguage.